home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Collections: MegaDisc
/
MegaDisc 36 (1993-11)(MegaDisc Digital Publishing)(AU)(Disk 1 of 2)[m doscopy][WB].zip
/
MegaDisc 36 (1993-11)(MegaDisc Digital Publishing)(AU)(Disk 1 of 2)[m doscopy][WB].adf
/
Tutes_&_CLI
/
Libraries
/
Libraries
Wrap
Text File
|
1993-10-22
|
6KB
|
102 lines
LIBRARIES (by Paul Mclachlan)
by Paul McLachlan
36 -+- 36 -+- 36 -+- 36 -+- 36 -+- 36 -+- 36 -+- 36 -+- 36 -+- 36
The library is one of the amazing aspects of the Amiga that
makes it able to do all of its wonderful tricks using much less
memory, and also one of the reasons Amiga programs are notoriously
smaller than their IBM equivalents (if, that is, any IBM program
can be seen as equivalent to an.. no, I won't get into that).
Unfortunately, these library things are a bit of a mystery to
newcomers. After all, their LAST computer didn't need them, and
all of a sudden they're running their latest PD disk, and "You
need reqtools.library". I mean, nag nag nag, I don't need it,
this stupid program needs it, right? Anyway, what does the
program need it for? I can't be all THAT important, can it? What
is a library anyway, for I doubt it holds boo... [nope, too
easy].
Okay, lets get down to it. The reason that libraries are so
important on the Amiga is that they hold 'routines' (parts of
programs) in them. A program can use these routines to do lots of
marvellous things, display pretty file requesters, crunch files
and load things from disk... betcha did a double take on that
one, huh? Yep, a library is required just to load a file from a
disk on the Amiga. Fortunately for you, this library, along with
a whole host of others is stored in your Amiga's ROM, not on the
disk, taking up space. This library is called the dos library and
needless to say, it's pretty important.
So, the reason a programs needs a library is because the
program doesn't contain all the necessary code in it to do
everything it needs to. Let us take, for example, the arp
library, which was actually pretty popular until kickstart 2.0
came along. Nowadays, all its routines have been included in the
libraries that are in ROM, so there is no need to have arp on
disk. Arp actually stands for 'Amigados Replacement Project',
which is not really a coup to take over your machine, it just
sounds like one. This contained all sorts of wonderful routines
that saved the programmers from having to re-invent the wheel
every time they wrote a program. Little things that Commodore,
well, forgot. So, the programmers simply used the library, and
life was pretty simple, since every second program used the thing,
then everyone had it on just about every bootable disk they had.
But then, came the library explosion. (No, not like that, not
anymore than the population explosion was like that..) All these
libraries started appearing that either did seemingly useless
things, or just did something that already have 9 other libraries
doing it. The classic case of the latter being the file requester
libraries, which I just counted 6 of in my libs directory (okay,
so there wasn't 9). I mean, Arp had one, there's a reqtools, a
req... I mean, even Commodore did one and called it Asl. Okay,
so most of these have routines in them other than just a file
requester, but they all do pretty similar things.
Now, the problem is, one program uses this, another uses that
and so on, until eventually, some program is going to want to use
one you've either never heard of, or simply don't have room to
install on your disk. I don't know about you, but the libs
directory on my hard drive is a little over 2.1 meg, and still
growing steadily. Of course, It's my fault as much as anyone's,
since I just install every library I come across since I've got
this phobia about messages like: 'you need so and so library
version 912 or higher'.
So, now our only problem is what we can do about it, short of
installing every library that you see and hoping you never see
'volume dh0: is full' or similar. Well, for the obscure library
problem (the one that is useless and no-body uses), I'd suggest
just delete it, or keep it on a disk in the back of your
collection somewhere, only install it if some silly program wants
it. As for the multiple library overkill, I'd go for that clever
solution that that ingenious fellow, Nico Francois (author of
powerpacker, and, incidently, a requester library called reqtools)
thought up. Its a small (4k) program that is called rtpatch, and
it plays around in the never never, probably doing things
Commodore never intended to be done, and 'patched' in reqtools as
your favourite library. Now, any program that uses the Req or Arp
file requesters will use reqtools instead, meaning that you don't
need those libraries installed, because those programs which use
them will THINK that they are there, and instead use reqtools.
Libraries really are a good invention, although they can get
out of hand if managed improperly (gee... listen to me, "now
water twice a day") Libraries do make it much easier for
programmers to use the Amiga, as well as making their programs
smaller and similar to each other (your file requesters will look
and act the same way for different programs). After all,
libraries are a significant part of what makes the Amiga able to
multitask, and besides, we're stuck with them.
36 -+- 36 -+- 36 -+- 36 -+- 36 -+- 36 -+- 36 -+- 36 -+- 36 -+- 36